Appliance and method for navigating among multiple captured images and functional menus

ABSTRACT

A capturing and viewing appliance and method are used for capturing and communicating images. The capturing and viewing appliance is an instrument used to capture and communicate images to other devices with communication capabilities. The capturing and viewing appliance includes a processor for manipulating and viewing the images on a built-in display. Program code stored in internal memory includes a menu/image navigation application program which allows the user to use navigation buttons to view multiple images as well as navigate menus. According to another aspect of the invention, the menu/image navigation interface provides a user-friendly interface for effective communication of functionality of an appliance or other device to the user through use of animated transitions. Through the use of icons, menus, navigation buttons and animated transitions used to communicate functionality to the user, the present invention presents a novel user interface which makes the menu/image navigation user interface and method a solution in devices with limited resources which need to be able to navigate among multiple images arranged in different orientations. The menu/image navigation appliance and method is designed for navigating among multiple captured images and operating the appliance using menus through instrument reuse which is especially useful in portable hand-held appliances or other devices which are capable of displaying images where space and compactness are a concern.

CROSS REFERENCE TO RELATED APPLICATIONS

[0001] This application is a continuation of U.S. application entitled“APPLIANCE AND METHOD FOR NAVIGATING AMONG MULTIPLE CAPTURED IMAGES ANDFUNCTIONAL MENUS,” Ser. No. 09/130,584, filed Aug. 7, 1998, now pendingand incorporated herein by reference.

[0002] This application is related to U.S. application Ser. No.09/130,869, entitled “APPLIANCE AND METHOD OF USING SAME HAVING A SENDCAPABILITY FOR STORED DATA” (Docket No. 10980462), U.S. application Ser.No. 09/130,080, entitled “APPLIANCE AND METHOD OF USING SAME HAVING AUSER HELP CAPABILITY” (Docket No. 10980471), U.S. application Ser. No.09/130,573, entitled “APPLIANCE AND METHOD OF USING SAME FOR CAPTURINGIMAGES” (Docket No. 10980472), U.S. application Ser. No. 09/130,082,entitled “APPLIANCE AND METHOD OF USING SAME HAVING A DELETE CAPABILITYFOR SAVED DATA” (Docket No. 10980473), U.S. application Ser. No.09/130,789, entitled “APPLIANCE AND METHOD OF USING SAME HAVING ACAPABILITY TO GRAPHICALLY ASSOCIATE AND DISASSOCIATE DATA WITH AND FROMONE ANOTHER” (Docket No. 10980474), U.S. application Ser. No.09/130,081, entitled “APPLICATION AND METHOD FOR COMMUNICATING ANDVIEWING MULTIPLE CAPTURED IMAGES” (Docket No. 10980475), U.S.application Ser. No. 09/130,572, entitled “APPLIANCE AND METHOD FORCAPTURING IMAGES HAVING A USER ERROR INTERFACE” (Docket No. 10980477),U.S. application Ser. No. 09/131,258, entitled “APPLIANCE AND METHOD FORVIEWING CAPTURED IMAGES” (Docket No. 10980481), and U.S. applicationSer. No. 09/130,868, entitled “APPLIANCE AND METHOD FOR MENU NAVIGATION”(Docket No. 10980483), which are incorporated herein by reference.

BACKGROUND OF THE INVENTION

[0003] 1. Field of the Invention

[0004] The present invention generally relates to the field of digitalcapturing and, more particularly, relates to a user interface for aportable hand-held capturing appliance for capturing and manipulatingimages through digital scanning or other means of capturing andcommunicating those images to other devices.

[0005] 2. Related Art

[0006] Intangible information is a vital business asset that can beexploited for competitive advantage if managed properly. In the pastfifteen years, improvements in information processing have been achievedprimarily from the widespread use of microcomputers in the workplace andtheir application in local and wide area networks. Through suchapplications as electronic mail (email) and networked access to documentstorage servers, the electronic communications market has exploded.Nevertheless, business is still far from reaching a “paperless”workplace. For example, according to a 1993 report by BIS StrategicDecisions (hereinafter BIS), an information technology consulting firm,more than 90 billion documents were created in 1992 and more than 1trillion copies of those documents were made. Moreover, BIS estimatedthat printing and copying expenses average between 6% and 13% of atypical company's revenue. These statistics illustrate the economicsavings available for those businesses that are able to merge paper andtechnology in a unified information processing strategy.

[0007] One tool that has proven useful for translating between paper andelectronic information is the digital scanner. Scanner-enabled documentdistribution endows paper-based documents with the speed and convenienceof electronic communications. A desktop scanner or network scannerallows business professionals to scan paper-based documents, manage themeffectively and distribute them in a timely fashion. Users can share anddistribute information easily by scanning directly to their email or PCfax applications. The growing popularity of fax modems and email isdriving the acceptance of scanner-enabled document distribution inoffices of all sizes. Fax/modem capabilities, which are available withvirtually all modem PCs, enable users to send and receive faxes directlyfrom a computer-at their desk or while traveling-and to check emailremotely.

[0008] Nevertheless, while scanners are ideal for users who need todisseminate paper-based information to colleagues through PC facsimileand/or email, traditional flatbed scanners lack the convenience andflexibility that users have become accustomed to through such productsas notebook computers and cellular phones. Hand-held scanners are animprovement in this regard; however, they are typically dependent on ahost computer for displaying the scanned images and for providing power.U.S. Pat. No. 5,550,938 to Hayakawa et al. (hereinafter Hayakawa)discloses a portable image scanner designed to overcome thesedisadvantages. Specifically, Hayakawa discloses a hand-held cordlessimage scanner having a display/control screen, a memory for storingscanned images, a self contained power supply and an interface thatallows the scanner to be received by a host computer as a memory cardfor transferring stored images from the scanner to the computer. WhileHayakawa's scanner is effective in breaking the dependency on a hostcomputer for image display and power, it still has several drawbacks.For example, Hayakawa's scanner offers no image processing featuresother than the capabilities of storing or discarding a newly scannedimage and reviewing those images that have been stored previously. Moreadvanced image processing would necessarily be done after transfer to ahost computer. Moreover, Hayakawa does not offer a graphical userinterface (GUI) containing icons and/or animations to assist users inoperating their device. Finally, transfer of images is limited to thosedevices having ports for receiving an external memory card or thecapability of reading the scanner memory through a memory card drive.

[0009] Accordingly, a heretofore unaddressed need exists in the industryfor providing a hand-held image capturing appliance and method thatallows users to navigate among multiple captured images, as well asfunctional menus in the appliance before transferring the capturedimages to some other unit such as a computer, printer, or facsimilemachine. In addition, the capturing device should provide cordlessoperation and use a standard interface for transferring images to otherdevices. A GUI is preferred to assist users, particularly novices, inoperating the device.

SUMMARY OF THE INVENTION

[0010] The present invention overcomes the inadequacies and deficienciesof the prior art as discussed hereinbefore. The present inventionprovides an image capturing appliance incorporating a menu/imagenavigation interface for communicating with and allowing the user toview multiple captured images as well as navigate menus on theappliance. The menu/captured image navigation interface and methodfacilitate ease of use and hardware simplification and miniaturizationof the capturing appliance for seamless integration of the applianceinto a consumer's existing tools and processes.

[0011] The capturing appliance contains a capturing means such asphotocells and a storage means for storing captured images. A processingmeans is also provided for processing the acquired image and displayingit on a self-contained display of the appliance. Program instructionsare provided in the memory of the appliance which allows the user toview and manipulate the captured image in a variety of pixel resolutionson the display of the appliance.

[0012] The menu/image navigation interface and method provides a userinterface incorporating on-screen icons, directional navigation buttonsfor designating captured images to be viewed as well as selecting itemsfrom user interface menus, and other functional buttons to be used inconjunction with the navigation buttons to execute tasks on thecapturing appliance. Also included are animated transitions tocommunicate to the user navigation among multiple captured images andmenus on the display of the appliance.

[0013] The menu/image navigation interface and method of the presentinvention have many advantages, a few of which are delineated hereafter,as examples.

[0014] An advantage of the menu/image navigation interface and method ofthe present invention is that they provide a simple procedure fornavigating among multiple captured images on an appliance usingfunctional buttons which serve other purposes in other operationalstates of the appliance.

[0015] Another advantage of the menu/image navigation interface andmethod of the present invention is that they provide a more flexible anduser friendly procedure for inspecting multiple captured images on anappliance.

[0016] Another advantage of the menu/image navigation interface andmethod of the present invention is that they provide a way of navigatingmenus in operating the appliance using functional buttons that serveother purposes in other operating states of the appliance.

[0017] Another advantage of the menu/image navigation interface andmethod of the present invention is that they provide a novel way ofcommunicating functionality to the user through the use of animation.

[0018] Another advantage of the menu/image navigation interface andmethod of the present invention is that they provide for a procedure fornavigating among images and menus in an appliance which is simple, easyto learn and efficient.

[0019] Another advantage of the menu/image navigation interface andmethod of the present invention is that they can be employed invirtually any graphical user interface (GUI).

[0020] Other features and advantages of the present invention willbecome apparent to one with skill in the art upon examination of thefollowing drawings and detailed description. It is intended that allsuch additional features and advantages be included herein within thescope of the present invention, as is defined by the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

[0021] In the accompanying drawings:

[0022]FIG. 1A is an elevation view of the hand-held image capture andcommunication appliance according to the present invention, whichdepicts a side of the unit containing the display screen, operationbuttons, and navigation buttons;

[0023]FIG. 1B is an elevation view of the appliance of FIG. 1A depictingthe opposing side to that illustrated in FIG. 1A, which contains thecapture button for performing an image capture;

[0024]FIG. 1C is an elevation view of the appliance of FIGS. 1A and 1Bdepicting an end of the unit, which contains the power button;

[0025]FIG. 1D is an elevation view of the appliance of FIGS. 1A, 1B, and1C depicting the opposing end to that illustrated in FIG. 1C, whichcontains a brightness button for adjusting the visual clarity of thedisplay screen;

[0026]FIG. 2 is a high-level block diagram of the internal hardware andsoftware architecture of the appliance illustrated in FIGS. 1A-1D;

[0027]FIG. 3 is a high-level state diagram of the application softwareof FIG. 2;

[0028]FIGS. 4A and 4B illustrate the tools menus displayed on thedisplay screen of FIG. 1A;

[0029]FIG. 5 illustrates the send menu displayed on the display screenof FIG. 1A;

[0030]FIG. 6 illustrates the delete menu displayed on the display screenof FIG. 1A;

[0031]FIG. 7 illustrates the help menu displayed on the display screenof FIG. 1A;

[0032]FIGS. 8A and 8B depict memory usage indicator icons on the displayscreen of FIG. 1A that provide a memory utilization report for theappliance;

[0033]FIG. 8C illustrates a thumbnail view of a captured image on thedisplay screen of FIG. 1A;

[0034]FIG. 8D illustrates a zoom view of a captured image on the displayscreen of FIG. 1A;

[0035]FIG. 8E illustrates the zoom view of a captured image of FIG. 8Don the display screen of FIG. 1A, together with a metaphorical iconsurrounded by directional arrows;

[0036]FIG. 8F illustrates the thumbnail view of FIG. 8C on the displayscreen of FIG. 1 A, together with a metaphorical icon with directionalarrows;

[0037]FIG. 9 illustrates the speed error message together withnavigational arrow descriptors as displayed on the display screen ofFIG. 1A;

[0038]FIG. 10 illustrates a progress box giving the status of imageprocessing together with a navigational arrow descriptor, as displayedon the display screen of FIG. 1A;

[0039]FIG. 11 illustrates the calibration instructions as displayed onthe display screen of FIG. 1A;

[0040]FIG. 12 illustrates a capturing a page help screen together withnavigational arrow descriptors as displayed on the display screen ofFIG. 1A;

[0041]FIG. 13 illustrates a momentary help screen instructing the userto initiate a capture as displayed on the display screen of FIG. 1A;

[0042]FIG. 14A illustrates the first image of an attached group ofcaptured images together with navigational arrow descriptors asdisplayed on the display screen of FIG. 1A;

[0043]FIG. 14B illustrates the last image of an attached group ofcaptured images together with navigational arrow descriptors asdisplayed on the display screen of FIG. 1A;

[0044]FIG. 14C illustrates an image within an attached group of capturedimages together with navigational arrow descriptors as displayed on thedisplay screen of FIG. 1A; and

[0045]FIGS. 15A, 15B and 15C are flowcharts describing the architectureand operation of the menu/navigation interface software module of FIG.2.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

[0046] Reference is now made to the drawings wherein like referencenumerals designate corresponding parts throughout these several figures.It should be understood by those skilled in the art that some aspects ofthe present invention may be practiced on any apparatus for the purposesof navigating menus and viewing multiple images, not limited toapparatuses which include or do not include image capturing capabilitiesthrough a photoelement array or scanning. For example, a user may usethe menu/image navigation interface of the present invention fornavigating menus and viewing multiple images or pages on different typesof computers or appliances.

[0047] Architecture of the Image Capture and Communication Appliance

[0048] A portable, hand-held, image capture and communication appliance22 embodying the principles of the present invention is shown in FIGS.1A through ID. Specifically, FIG. 1A depicts one side (i.e., front) ofappliance 22 where a flat-panel display 24 along with user operationbuttons 26, 28, 32, 34, 36, 38 and user navigation buttons 42, 44, 46,48 are located. Display 24 is preferably of the flat-panel variety toaccommodate the hand size dimensions of appliance 22. Common types offlat-panel displays suitable for use in the present invention includeelectro-luminescent displays, gas plasma discharge displays, liquidcrystal displays (LCDs) and field emission displays (FEDs). Display 24is the means by which information, including captured images, text,icons, and animations, is communicated to the user. The user operationbuttons comprise an image send or transmit button 26, an image zoombutton 28, an image rotate button 32, an image delete button 34, a helputility button 36 and a tools menu button 38. Send, zoom, rotate, anddelete buttons 26, 28, 32 and 34 allow the user to electronicallymanipulate an image or page that has been scanned into memory throughphotoelement array 52. Activation of tools button 38 presents the userwith a menu that includes possible image operations (e.g., imageattachment/grouping, image detachment/ungrouping), changing the mode ofappliance 22 (i.e., toggling between text (binary) capture and image(grayscale) capture), calibrating appliance 22, displaying a screenidentifying important specifications such as a model number, hardware orsoftware release number, memory usage, selecting a page size forprinting, etc. or other user utilities not deserving of a dedicatedexternal button for activation. Help button 36 provides the user withaccess to both general tutorials, process animation, and how-toinstructions on the operation of appliance 22 and context sensitiveinstruction when requested while another operation or menu is active.The navigation buttons include an up button 42, a down button 44, a leftbutton 46, and a right button 48 and are controlled by the user to steera course through menu items and to view images or pages that have beencaptured in memory.

[0049]FIG. 1B shows the side of appliance 22 opposite that illustratedin FIG. 1A (i.e., back). The back side of appliance 22 includes imagecapture button 54, which is depressed by a user to scan an image throughphotoelement array 52 and is released once the image is captured. Apower button 56 is included at one end of appliance 22 as shown in FIG.1C and a contrast control 58 for display 24 is located at the other endof appliance 22 as shown in FIG. 1D. The positioning of the variousbuttons, power switch 56 and contrast control 58 on appliance 22 asshown in FIGS. 1A through ID is merely exemplary and can be modified asneeded to satisfy the ergonomic requirements of the targeted usercommunity.

[0050] Referring now to FIG. 2, the internal architecture of appliance22 will be described hereafter. Appliance 22 includes a processor 62,which communicates with a memory 64 via address/data bus 66. Processor62 can be any commercially available or custom microprocessor suitablefor an embedded application. Memory 64 is representative of the overallhierarchy of memory devices containing the software and data used toimplement the functionality of appliance 22. Memory 64 can include, butis not limited to, the following types of devices: cache, ROM, PROM,EPROM, EEPROM, flash, SRAM, and DRAM. As shown in FIG. 2, memory 64holds four major categories of software and data used in appliance 22:the operating system 68; the application software 70; the I/O devicedrivers 72; and the image data 74 generated for each scan. Operatingsystem 68 should be designed for real time embedded applications and,preferably, is relatively compact to make the most efficient use ofmemory 64. One such example of a real time operating system meetingthese criteria is the PSOSYSTEM operating system (pSOSystem® or pSOS®)sold by Integrated Systems, Inc., Santa Clara, Calif., U.S.A., which isused in the preferred embodiment of the present invention. I/O devicedrivers 72 include software routines accessed through operating system66 by application software 70 to communicate with devices such asdisplay 24, certain memory components 64 and I/O ports such as a serialport or infra red (IR) port for transferring data to another appliance,device or system. The digital representations of the images captured byappliance 22 is denoted by image data 74. The format used for storingthe images should be compatible with application software 70. One commonformat used for encoding images is the JPEG standard; however, otherpublic or proprietary standards can be used with equal success. In thepreferred embodiment, CCITT-G4, which is designed for facsimile usageand black and white images, is used. Finally, application software 70comprises the control programs that implement the various features ofappliance 22. Application software 70 and devices drivers 72 aretypically written in a high-level programming language such as C or C++for development convenience. Nevertheless, some drivers or applicationmodules are sometimes written in assembly or machine language tooptimize speed, memory usage or layout of the software in memory. In thepreferred embodiment, the present invention uses C language to implementapplication software 70 and device drivers 72 and assembly language forthe most time-critical sections.

[0051] Application software 70 can be broken into several modulescorresponding to the various features of appliance 22, as shown in FIG.2. These software modules include an initialization module 76, a capturepage module 78, a thumbnail view module 82, a zoom view module 84, apage rotation module 86, an attach page module 88, a detach page module92, a delete page module 94, a send page module 96, an error utilitymodule 98, a help utility module 102 and a menu/navigation interfacemodule 104. Note that an image captured in memory is interchangeablyreferred to herein as a “page” because the image is portrayed inappliance 22 as a physical page of text and/or imagery. A brief overviewof each of the aforementioned modules follows hereafter.

[0052] Initialization module 76 contains the boot software that isinvoked when appliance 22 powers up. This module works closely withoperating system 68 and device drivers 72 to perform any hardwareinitialization for processor 62, memory devices 64, display 24, andsoftware initialization for global resources, such as message queues andbuffers, system tasks, and memory partitions. Capture page module 78controls the acquisition of images through photoelement array 52 andtheir conversion into a suitable format for storage in memory 64.Thumbnail view module 82 provides the default visual for pages and iconsshown on display 24. The thumbnail view presents an entire page ondisplay 24 as illustrated in FIG. 8C. Zoom view module 84 allows theuser to magnify a portion of a page as illustrated in FIG. 8D. Pagerotation module 86 allows the user to rotate a page either in thumbnailor zoom view in 90° increments. Attach page module 88 allows the user tologically join pages together to form a group of pages that can bedeleted, sent or viewed as an individual unit, but not rotated orzoomed. Rotation and zoom always apply only to the current page.Conversely, detach page module 92 allows the user to separate a page orpages from a previously formed group. Delete page module 94 allows theuser to purge a page or group of pages from memory 64. Send page module96 allows the user to transfer a page or group of pages to anotherappliance, device or system through the serial or IR communication portsof appliance 22. Error utility module 98 provides notification to theuser when the user attempts an invalid operation. Help utility module102 provides the user, in real time, with general instructions andanimations on operating appliance 22 and context sensitive instructionsfor performing a specific operation. Lastly, menu/navigation interfacemodule 104 provides the user with graphical menus for performing variousoperations and processes the user's response thereto. Moreover,menu/navigation interface module 104 responds to navigation buttons 42,44, 46, and 48 that allow the user to steer a course through thegraphical menus and view the stored pages. The operation ofmenu/navigation interface module 104 will be discussed in detailhereinafter.

[0053] A high level state diagram for application software 70 is shownin FIG. 3. This state diagram is useful for gaining a broadunderstanding of the operation of application software 70 and itsassociated software modules. These states are representative of tasks orprocesses in application software 70 that act on messages from a messagequeue, which are generated as a result of user interaction withappliance 22 (i.e., activation of buttons). Appliance 22 and applicationsoftware 70 begin and terminate from the off state 106, which iscontrolled by the user through operation of power switch 56. Off state106 can clearly be entered from any other state in response to a userturning appliance 22 off through switch 56. When a user turns switch 56to the on position, the system will pass through a transientinitialization state 108 during which time initialization module 76 isinvoked to perform its functions. Once system initialization iscomplete, the system enters the thumbnail view state 112, which is thedefault state for viewing any captured images. From thumbnail view state112, the system can transition to any one of several possible statesdepending on the action by the user. For example, the capture button canbe pressed to enter capture state 114 to perform an image capture. Afterthe image is captured, the button is released to return to thumbnailview state 112. If the user wishes to change the orientation of thecaptured image, then activation of rotation button 32 will rotate thecaptured image 90° with each invocation. Moreover, now that an image iscaptured in memory 64, a user can obtain a magnified view of a portionof the image or page by pressing zoom button 28 to enter zoom view state116. Similar to thumbnail view state 112, the magnified image can alsobe rotated through application of rotation button 32. The system willreturn to thumbnail view state 112 through operation of zoom button 28or performing certain actions such as capture, send, delete, attach,detach, etc. Additionally, the thumbnail view state 112 includesfunctionality for the empty (no images) state and the image verificationstate.

[0054] From thumbnail view state 112, one of four menu states can beentered depending on the choice made by the user. First, activation oftools button 38 will transition the system into tools menu state 118where a menu of possible page operations and/or features is exhibited ondisplay 24 as illustrated in FIGS. 4A and 4B. Second, activation of sendbutton 26 will transition the system into send menu state 122 where amenu of options for transferring a page or group of pages to anotherappliance, device or system is exhibited on display 24 as illustrated inFIG. 5. Third, activation of delete button 34 will transition the systeminto delete menu state 124 where a menu of options for deleting a pageor group of pages from memory 64 is exhibited on display 24 asillustrated in FIG. 6. Lastly, activation of help button 36 willtransition the system into help menu state 126 where a menu of helptopics is exhibited on display 24 as illustrated in FIG. 7. Once any ofthe aforementioned menu states is reached, the user can choose a desiredmenu option by using navigation buttons 42 and 44 and then validatingthe choice by pressing a confirmation button. In the preferredembodiment of the present invention, the confirmation button is simplythe button by which the present menu on display is accessed. An iconindicating the appropriate confirmation button is displayed in the lowerleft hand side of the menus as illustrated in FIGS. 4A through 7. Menustates may be exited by simply invoking navigation button 46 totransition to a previous state.

[0055] From some states, an invalid response by the user (i.e., userpresses an inactive button) will be ignored or will result in atransition to the default message handler state 128 where the userresponse is interpreted through the message that was generatedinternally and a transition is made to the error dialog state 132 tonotify the user of their error via a message or graphic on display 24.Inactive buttons will occasionally also display a blinking icon tocommunicate to the user the selection of the inactive button and whichbuttons are active. Alternatively, error dialog state 132 can be entereddirectly if application software 70 detects an error in the execution ofa valid operation. The most common example of this is when the userfollows an improper capture path with appliance 22 during the imagecapture process. An example of such an error is displayed in FIG. 9.

[0056] The features provided by the menu/navigation interface softwaremodule 104 will be described hereafter with frequent reference to (a)the architecture and operation of the application software 70 of FIG. 2;(b) the flowcharts of FIG. 15A, FIG. 15B and FIG. 15C; and (c) thecaptured page illustrations of FIGS. 4A through FIG. 14C.

[0057] Operation of the Menu/Navigation Interface and Method

[0058] Recall from the state diagram of FIG. 3 that when power isprovided via switch 56 (FIG. 1C) application software 70 passes througha transient initialization state 108 to reach thumbnail view state 112,which is the default state for capturing images using capture button 54and viewing images. During the thumbnail view state 112 and before anyimages have been captured, the navigation buttons 42, 44, 46, 48 do nothave any functionality other than to invoke a momentary message boxindicating which button to press, the capture button 54, to begin animage capture. Once the user begins an image capture, themenu/navigation interface and method make it possible for the user tocancel the acquisition of an image by pressing the left navigationbutton 46 (FIG. 1A) during the capturing process, denoted by a “Saving .. . ” dialog on the display 24 (FIG. 1A) of the appliance 22 (FIG.1A-1D). The availability of this functionality is communicated to theuser by a notation appearing within the dialog labeling the leftnavigation button 46 (FIG. 1A) as “Cancel” as illustrated in FIG. 10.The use of the left navigation button 46 (FIG. 1A) for thisfunctionality eliminates the need of an additional input device such asa mouse pointer as is typically found in conventional windowed systemsto point and click on a “Cancel” or

[0059] “Quit” button.

[0060] Upon successfully capturing an image, the image is displayed as athumbnail size icon (FIG. 8C) on the display 24 (FIG. 1A). From thisstate, the appliance may reach various other states, i.e. TOOLS MENU118, SEND MENU 122, DELETE MENU 124, HELP MENU 126 where users interactwith a menu or message box to operate the appliance in that state.Additionally, the ZOOM VIEW state enables the user to position ametaphoric icon over an area of the thumbnail image to be magnified.ERROR DIALOG messages can be entered from any state. In all of theaforementioned states, the navigation buttons serve functions inconjunction with other operational buttons to enable the user to operatethe appliance.

[0061]FIG. 15A, FIG. 15B and FIG. 15C are functional flowchartsdetailing the operation of the navigation buttons of the menu/navigationinterface and method during different states of the appliance.

[0062] In FIG. 15A, as aforementioned, the appliance is initialized atpower up. Program code within the menu/navigation interface module thenchecks if a menu is active at step 134. If so, the left navigationbutton is programmed to “Cancel” the active menu. Additionally, the upnavigation button and the down navigation button is programmed to scrolla highlight bar through the selectable items within the menu at step 136as illustrated in FIG. 4A through FIG. 7. If the program code finds thata menu is not active, it then checks if the zoom state is active at step144. If the zoom state is active, all navigation buttons are programmedto operate in conjunction with the zoom button 28 (FIG. 1A) todirectionally move a metaphoric icon across the image to select an areato magnify to a greater pixel resolution at step 146 as illustrated inFIG. 8E and FIG. 8F and/or to pan/scroll the zoomed page. If the zoomstate is not active, program code checks if a message screen is activeat step 154. If so, the up navigation button and the down navigationbutton are programmed to “scroll” a message which is too large to fit inthe message dialog box. This instance may involve an error message, ahelp message or a status message as displayed in FIG. 9, FIG. 11 andFIG. 12. Scrollable functionality is communicated to the user by up anddown navigation arrows along with “More” being displayed in the headeror footer of the dialog box. Additionally, the left navigation buttoncancels the message box at step 156. If a menu, zoom state, or messagescreen is not active, the program determines that a captured image ormemory usage indicator is actively displayed at step 158.

[0063] Next, in FIG. 15B, it is determined if an empty memory usageindicator (FIG. 8A) is displayed at step 164. If so, in the preferredembodiment, all navigation buttons are programmed to display a messageon how to begin an image capture at step 166 as displayed in FIG. 13. Ifan empty memory usage indicator (FIG. 8A) is not being displayed, it isdetermined if a single image or a (non-empty) memory usage indicator(FIG. 8B) is displayed at step 174. If so, in the preferred embodiment,the left and right navigation buttons 46 and 46 (FIG. 1A) are programmedto slide the displayed image or memory usage indicator (FIG. 8B) to theright or left direction and off the screen and slide a next or previouscaptured image or memory usage indicator (FIG. 8B) in memory onto thedisplay at step 176. It should be understood by those skilled in the artthat the up and down arrows could have optionally been used to slide theimage up or down off of the display. However, in the preferredembodiment, depressing the up or down navigation buttons will blink livearrow button icons on the screen at step 176. If a single image ormemory usage indicator (FIG. 8B) is not displayed and an empty memoryusage indicator is not displayed at step 164, the program codedetermines that a group image is being displayed at step 184.

[0064] Referring to FIG. 15C, if it is determined that a group image isdisplayed, it is determined if the first image of the group FIG. 14A isbeing displayed at step 184. If so, then the left navigation button isprogrammed to slide the entire group of thumbnail images to the rightand off the display to display the previous thumbnail image or memoryusage indicator at the previous memory location before the group ofthumbnail images 186. Similarly, the right navigation button isprogrammed to slide the entire group of thumbnail images to the left todisplay the next thumbnail image or group of thumbnail images or memoryusage indicator stored at the next memory location after the group ofthumbnails at step 186. The down navigation button is programmed todisplay the next thumbnail image in the group at step 186. The upnavigation button is programmed to momentarily blink a live down arrowbutton icon to help users discover live buttons 186 as shown in FIG.14A. If the first image of the group is not displayed, it is thendetermined if the last image of the group FIG. 14B is displayed at step194. If so, the up navigation button is programmed to display theprevious thumbnail image stored in the thumbnail group at step 196. Thedown navigation button will momentarily blink a live up arrow buttonicon to help users discover live buttons at step 196 as shown in FIG.14B. If neither the first image nor the last image of a group isdisplayed, but a group image is displayed, it is determined that animage within a group FIG. 14C is being displayed at step 198. In thisinstance, all navigation buttons are functional with the up and downnavigation buttons being programmed to navigate within the group ofimages and the left and right navigation buttons closing the group anddisplaying either the previous image stored in memory before the groupedimages or the next image stored in memory after the grouped images atstep 198 or memory usage indicator.

[0065] The menu navigation interface program 104 of the presentinvention can be implemented in hardware, software, firmware, or acombination thereof. In the preferred embodiment(s), the menu navigationinterface program 104 is implemented in software or firmware that isstored in a memory 64 and that is executed by a suitable instructionexecution system.

[0066] The menu navigation interface program 104, which comprises anordered listing of executable instructions for implementing logicalfunctions, can be embodied in any computer-readable medium for use by orin connection with an instruction execution system, apparatus, ordevice, such as a computer-based system, processor-containing system, orother system that can fetch the instructions from the instructionexecution system, apparatus, or device and execute the instructions. Inthe context of this document, a “computer-readable medium” can be anymeans that can contain, store, communicate, propagate, or transport theprogram for use by or in connection with the instruction executionsystem, apparatus, or device. The computer readable medium can be, forexample but not limited to, an electronic, magnetic, optical,electromagnetic, infrared, or semiconductor system, apparatus, device,or propagation medium. More specific examples (a nonexhaustive list) ofthe computer-readable medium would include the following: an electricalconnection (electronic) having one or more wires, a portable computerdiskette (magnetic), a random access memory (RAM) (magnetic), aread-only memory (ROM) (magnetic), an erasable programmable read-onlymemory (EPROM or Flash memory) (magnetic), an optical fiber (optical),and a portable compact disc read-only memory (CDROM) (optical). Notethat the computer-readable medium could even be paper or anothersuitable medium upon which the program is printed, as the program can beelectronically captured, via for instance optical scanning of the paperor other medium, then compiled, interpreted or otherwise processed in asuitable manner if necessary, and then stored in a computer memory 64.

[0067] In concluding the detailed description, it should be noted thatit will be obvious to those skilled in the art that many variations andmodifications can be made to the preferred embodiment withoutsubstantially departing from the principles of the present invention.All such variations and modifications are intended to be included hereinwithin the scope of the present invention, as set forth in the followingclaims.

What is claimed is:
 1. A hand-held image capturing and communicationappliance, comprising: a photoelement array for acquiring image data; amemory for saving said image data; a processor; a control instrument; adisplay for displaying said image data; and a program stored in saidmemory and executed by said processor using said control instrument fornavigating among a plurality of said image data, said program codefurther comprising a menu navigation software module for navigating aplurality of menus.
 2. The appliance of claim 1 , further comprising: amenu interface for controlling the hand-held image capturing andcommunication appliance by navigating said plurality of menus using saidcontrol instrument.
 3. The appliance of claim 2 , wherein when at leastone of said plurality of menus of said menu interface is activated anddisplayed on said display, said control instrument controls selection ofat least one element of said menu.
 4. The appliance of claim 2 , whereinwhen none of said plurality of menus is active and said image data isstored in said memory, said control instrument controls navigation amongsaid images stored in said memory.
 5. The appliance of claim 2 , whereinsaid control instrument comprises a set of navigational buttons.
 6. Theappliance of claim 5 , wherein said set of navigational buttonscomprise: a left navigation button; a right navigation button; an upnavigation button; and a down navigation button.
 7. The appliance ofclaim 6 , wherein at least one of said plurality of menus is responsiveto the activation of at least one of the set of navigational buttonswhen said menu interface is active.
 8. The appliance of claim 6 ,wherein said left navigation button deactivates at least one of saidplurality of menus which is displayed on said display when said menuinterface is active.
 9. The appliance of claim 6 , wherein said upnavigation button distinguishes each said element of said menusequentially up a list of said menu elements when said menu interface isactive; and wherein said down navigation button distinguishes each ofsaid elements of said menu sequentially down a list of said menuelements when said menu interface is active.
 10. The appliance of claim6 , wherein said up navigation button navigates among attached imagesgrouped into a logical unit when said menu interface is not active andan image is displayed which is grouped into said logical unit, anddisplays the previous image grouped into said logical unit.
 11. Theappliance of claim 10 , wherein said down navigation button navigatesamong attached images grouped into a logical unit when said menuinterface is not active and an image is displayed which is grouped intosaid logical unit, and displays the next image grouped into said logicalunit.
 12. The appliance of claim 6 , wherein said left navigation buttonnavigates among said image data stored in said memory which is not in acurrent logically grouped unit, and displays the previous logicallygrouped unit of said image data stored in a previous contiguous memorylocation in said memory.
 13. The method of claim 12 , wherein said rightnavigation button navigates among said image data stored in said memorywhich is not in the current logically grouped unit, and displays thenext logically grouped unit of said image data stored in a nextcontiguous memory location in said memory.
 14. A method for navigatingamong a plurality of image data using a handheld image capturing andcommunication appliance, said method comprising the steps of: acquiringimage data for said appliance; saving said image data in a memory;displaying said image data on a display; providing a menu interface fornavigating a plurality of menus of said menu interface, said menuinterface using program code stored in said memory and executed by aprocessor; and navigating among a plurality of said image data usingsaid menu interface.
 15. The method of claim 14 , further comprising thestep of: selecting at least one element of said menu when at least oneof said plurality of menus of said menu interface is activated anddisplayed.
 16. The method of claim 14 , further comprising the step of:navigating among said images stored in said memory when said pluralityof menus is inactive and said image data is stored in said memory. 17.The method of claim 14 , further comprising the step of: providing aplurality of navigation buttons, said plurality of navigation buttonsincluding a left navigation button, a right navigation button, an upnavigation button and a down navigation button.
 18. The method of claim17 , further comprising the steps of: distinguishing each element ofsaid menu sequentially up a list of said menu elements when said menuinterface is active and said up navigation button is selected; anddistinguishing each of said elements of said menu sequentially down alist of said menu elements when said menu interface is active and saiddown navigation button is selected.
 19. The method of claim 17 , furthercomprising the step of: displaying a previous image among attachedimages if said image is grouped into a logical unit when said menuinterface is inactive and said up navigation button is selected; anddisplaying a next image among said attached images if said image isgrouped into a logical unit when said menu interface is inactive andsaid down navigation button is selected.
 20. The method of claim 17 ,further comprising the step of: displaying a previous logically groupedunit of said image data stored in a previous contiguous memory locationin said memory when said menu interface is inactive and said leftnavigation button is selected; and displaying a next logically groupedunit of said image data stored in a next contiguous memory location insaid memory when said menu interface is inactive and said leftnavigation button is selected.